بانك اطلاعاتی معروف MySQL كه اپنسورس است، طرفداران زیادی در بین برنامهنویسان دارد. MySQL علاوه بر آنكه یكی از نمونههای بسیار موفق نرمافزارهای منبع باز محسوب میشود
طرفداران زیادی در بین برنامهنویسان دارد. MySQL علاوه بر آنكه یكی از نمونههای بسیار موفق نرمافزارهای منبع باز محسوب میشود، مثالی از نرمافزاری است كه در اروپا (سوئد) پا به عرصه گذاشته است. نخستین نسخه این بانك اطلاعاتی توسط دو نفر از برنامهنویسان سوئدی نوشته شد و از آن پس بر اساس مدل نرمافزارهای منبع باز توسعه یافت. البته در میانه راه (یعنی در زمان عرضه نسخه سوم این نرمافزار) بر اساس توافقی میان شركت MySQL AB از یك سو و شركت معظم SAP (كه دارای خط تحقیق و توسعه بانك اطلاعاتی اختصاصی خود بود) از طرف دیگر، نسخه ویژهای موسوم به MaxDB از تلفیق تكنولوژیهای این دو شركت در فهرست محصولات MySQL قرار گرفت. اما شركت MySQL همچنان كار توسعه نسخه قبلی و منبع باز نرمافزار MySQL را تا این لحظه به موازات MaxDB ادامه داده است. طرفداران فلسفه نرمافزارهای منبع باز همواره از MySQL به عنوان نمونهای یاد میكنند كه توانسته است بهخوبی با نمونههای بانكهای اطلاعاتی اختصاصی همانندSQL server كه سرمایهگذاریهای سنگینی برای توسعه آن انجام میشود، رقابت كند (هر چند كه مایكروسافت بر اساس یك سیاست كلی تنها رقیب خود را در زمینه بانكهای اطلاعاتی، محصولات اوراكل میداند و اصولاً توجهی به نرمافزارهای منبع باز نمیكند). اما واقعیت آن است كه در دنیای برنامهنویسی این دو نرمافزار در رقابت تنگاتنگ قرار دارند. آخرین نسخه MySQL همراه مجموعهای از قابلیتها و امكانات عرضه شده است كه آنرا بیش از پیش بهسمت كاربردهای <بزرگ مقیاس> سوق میدهد. برخی از ناظران معتقدند هدف اولیه تغییرات و پیشرفتهای ارائه شده در نسخه ۵ این نرمافزار، بیش از هر چیز دیگری معطوف برنامهنویسی پیشرفته در كاربردهای گسترده و بزرگ است. یكی از منابع مورداستفاده در تهیه این مقاله در این زمینه چنین بیان میكند: <آیا زمان آن فرا رسیده است كه اوراكل باز گردد و به پشتسر خود نگاه كند؟> جالب است كه نویسنده در نوشته خود اصلاً اسمی از مایكروسافت و SQL server نیاورده است!
بانكاطلاعاتی سرور از نوع Embedded
اگرچه قابلیت استفاده از این بانك اطلاعاتی به صورت سرور Embedded موضوع جدیدی محسوب ن-م-یش-ود و از نسخه ۴ MySQL به بعد همواره وجودداشته است، اما این ویژگی از سوی كاربران همچنان نسبتاً ناشناخته باقیمانده است. استفاده از موتور نرمافزاری این بانك اطلاعاتی به صورت Embedded با توجه به آنكه این نرمافزار از نظر توابع API بهطور كامل با مدل Client/Server سازگاری دارد، بسیار ساده است. در واقع برای بهكارگیری این نرمافزار به صورت Embedded تنها كافی است تا یك تغییر كوچك در سورس كد (نسبت به روش معمول) اعمال شود. نمونهای از یك قطعه كد به زبان C (كه در گوشه و كنار اینترنت به فراوانی یافت میشود) این مطلب را بهخوبی نمایش میدهد. (به قطعه كد شماره یك مراجعه نمایید)
Unionها
یونیونها موجوداتی هستند كه امكان تركیب دو یا چند Query را در یك DataSet فراهم میكنند (البته با فرض این كه اسامی ستون، نوع داده و ترتیب فیلد مطابقت داشته باشند). یونیونها مكانیسم بسیار قدرتمندی برای انواع گوناگون جستجوهای پیشرفته محسوب میشوند. بهطور معمول زمانی یونیونها بهكار برنامهنویسان میآیند كه در كاربردهای مورد نظر آنها، دو جدول شامل اطلاعات نسبتاً مرتبط وجود داشته باشند. به عنوان مثال، در صورتیكه در ساختار یك بانك اطلاعاتی، یك جدول شامل اطلاعات فروشندگان باشد و جدول دیگری برای ثبت دادههای شركتهای فروشنده لوازم ساختمانی بهكار رفته باشد، میتوان از یونیون برای جستجوی همزمان در دو جدول و بهدست آوردن یك مجموعه پاسخ یا result set بهره گرفت.
SubQueryها
از SubQueryها و جداول مشتق شده برای قرار دادن عبارات انتخابی در یك SQL Statement دیگر استفاده میشود. مثلاً اگر در بخش FROM عبارت جستجوی خود از یك عبارت SELECT دیگر استفاده كنید، در این صورت، عبارت SELECT خارجی از نتایج بهدست آمده از عبارت SELECT بهكار رفته در بخش FROM كلی جستجو، استفاده خواهد كرد. این ویژگی هم یكی از ابزارهای قدرتمندی است كه در كاربردهای پیشرفته به كمك برنامهنویسان میآید.
عبارات از قبل آماده
برنامهنویسان آشنا با گرامر عبارات ODBC ازپیش آماده (ODBC Prepared statement) از این پس میتوانند %
نظرات شما عزیزان: